package top.infopub.model.bpa;


import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 其他合同评审
 * </p>
 *
 * @author astupidcoder
 * @since 2021-06-15
 */
public class OtherContractsReview  {

    private static final long serialVersionUID = 1L;


    private String id;

    //SUBMITTED_SUM
    private String submittedSum;

    public String getSubmittedSum() {
        return submittedSum;
    }

    public void setSubmittedSum(String submittedSum) {
        this.submittedSum = submittedSum;
    }

    /**
     * 单据编号
     */
    private String codes;

    /**
     * 项目全局唯一编号
     */
    private String proCode;

    /**
     * 添加人
     */
    private String addBy;

    /**
     * 添加时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date addTime;

    /**
     * 最后修改人
     */
    private String uptBy;

    /**
     * 最后修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date uptTime;

    /**
     * 当前审批状态 1=审批中 9=审批完成 10=审批终止
     */
    private String processStatus;

    /**
     * 关联的审批流程ID
     */
    private String processId;

    /**
     * OA待办
     */
    private String oaId;

    /**
     * 合同名称
     */
    private String contractName;

    /**
     * 合同签订日期
     */
    //@TableField("CONTRACT_TIME")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date contractTime;

    /**
     * 费用类型
     */
    //@TableField("COST_TYPES")
    private String costTypes;

    /**
     * 公司名称
     */
    //@TableField("COMPANY_NAME")
    private String companyName;

    /**
     * 合同编码
     */
    //@TableField("CONTRACT_CODE")
    private String contractCode;

    /**
     * 合同工期 (年)
     */
    //@TableField("CONTRACT_DURATION_YEAR")
    private String contractDurationYear;

    /**
     * 合同开工日期
     */
    //@TableField("COMMENCEMENT_DATE")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date commencementDate;

    /**
     * 合同结算模式
     */
    //@TableField("CONTRACT_SETTLEMENT_MODE")
    private String contractSettlementMode;

    /**
     * 乙方完成标准
     */
    //@TableField("COMPLETION_CRITERIA")
    private String completionCriteria;

    /**
     * 合同工期（天）
     */
    //@TableField("CONTRACT_DURATION_DAY")
    private String contractDurationDay;

    /**
     * 合同竣工日期
     */
    //@TableField("DATE_COMPLETION")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date dateCompletion;

    /**
     * 合同总价
     */
    //@TableField("CONTRACT_TOTAL_PRICE")
    private BigDecimal contractTotalPrice;


    /*项目负责人*/
    private String projectLeader;

    public String getProjectLeader() {
        return projectLeader;
    }

    public void setProjectLeader(String projectLeader) {
        this.projectLeader = projectLeader;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getCodes() {
        return codes;
    }

    public void setCodes(String codes) {
        this.codes = codes;
    }

    public String getProCode() {
        return proCode;
    }

    public void setProCode(String proCode) {
        this.proCode = proCode;
    }

    public String getAddBy() {
        return addBy;
    }

    public void setAddBy(String addBy) {
        this.addBy = addBy;
    }

    public Date getAddTime() {
        return addTime;
    }

    public void setAddTime(Date addTime) {
        this.addTime = addTime;
    }

    public String getUptBy() {
        return uptBy;
    }

    public void setUptBy(String uptBy) {
        this.uptBy = uptBy;
    }

    public Date getUptTime() {
        return uptTime;
    }

    public void setUptTime(Date uptTime) {
        this.uptTime = uptTime;
    }

    public String getProcessStatus() {
        return processStatus;
    }

    public void setProcessStatus(String processStatus) {
        this.processStatus = processStatus;
    }

    public String getProcessId() {
        return processId;
    }

    public void setProcessId(String processId) {
        this.processId = processId;
    }

    public String getOaId() {
        return oaId;
    }

    public void setOaId(String oaId) {
        this.oaId = oaId;
    }

    public String getContractName() {
        return contractName;
    }

    public void setContractName(String contractName) {
        this.contractName = contractName;
    }

    public Date getContractTime() {
        return contractTime;
    }

    public void setContractTime(Date contractTime) {
        this.contractTime = contractTime;
    }

    public String getCostTypes() {
        return costTypes;
    }

    public void setCostTypes(String costTypes) {
        this.costTypes = costTypes;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getContractCode() {
        return contractCode;
    }

    public void setContractCode(String contractCode) {
        this.contractCode = contractCode;
    }

    public String getContractDurationYear() {
        return contractDurationYear;
    }

    public void setContractDurationYear(String contractDurationYear) {
        this.contractDurationYear = contractDurationYear;
    }

    public Date getCommencementDate() {
        return commencementDate;
    }

    public void setCommencementDate(Date commencementDate) {
        this.commencementDate = commencementDate;
    }

    public String getContractSettlementMode() {
        return contractSettlementMode;
    }

    public void setContractSettlementMode(String contractSettlementMode) {
        this.contractSettlementMode = contractSettlementMode;
    }

    public String getCompletionCriteria() {
        return completionCriteria;
    }

    public void setCompletionCriteria(String completionCriteria) {
        this.completionCriteria = completionCriteria;
    }

    public String getContractDurationDay() {
        return contractDurationDay;
    }

    public void setContractDurationDay(String contractDurationDay) {
        this.contractDurationDay = contractDurationDay;
    }

    public Date getDateCompletion() {
        return dateCompletion;
    }

    public void setDateCompletion(Date dateCompletion) {
        this.dateCompletion = dateCompletion;
    }

    public BigDecimal getContractTotalPrice() {
        return contractTotalPrice;
    }

    public void setContractTotalPrice(BigDecimal contractTotalPrice) {
        this.contractTotalPrice = contractTotalPrice;
    }
}
